home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
DS-CD ROM 2 1993 August
/
DS CD-ROM 2.Ausgabe (August 1993).iso
/
programm
/
ds0256
/
install.bat
< prev
next >
Wrap
DOS Batch File
|
1992-11-30
|
15KB
|
460 lines
@ECHO OFF
REM -----------------------------------------------
REM INSTALL V2.05 - Installierungs-Datei für MDEBUG
REM (c) 1992 Bernd Schemmer
REM -----------------------------------------------
REM Für 4DOS ab Version 3 auf BTM umschalten!
IF %@eval[2+2] == 4 LOADBTM ON
BREAK ON
CLS
SET VERSION=V2.05
IF NOT "%VERSION%" == "V2.05" GOTO EnvError
ECHO. INSTALL - Entpacken der Archive von MDEBUG %VERSION%
ECHO.
REM ----- Testen, ob die Datei von der richtigen Diskette gestartet wurde
IF EXIST START.DOC GOTO DiskOk
ECHO. ***** INSTALL fataler Fehler: Falsche Start-Diskette benutzt!
ECHO.
ECHO. ***** INSTALL.BAT kann nur von der Original-Diskette der Shareware-
ECHO. ***** Version oder der ERSTEN (und evtl. einzigen) Diskette der
ECHO. ***** Vollversion (bzw. einer Kopie einer dieser beiden Disketten)
ECHO. ***** gestartet werden!
GOTO ENDE0
:DiskOk
ECHO. Initialisiere die Variablen. Bitte warten, das dauert etwas ...
ECHO. [evtl. Fehlermeldungen wie 'Kein Platz mehr im Umgebungsbereich' können
ECHO. ignoriert werden, da sie von INSTALL behandelt werden!]
ECHO.
REM ----- Environment-Variablen vorbelegen
SET RETADR=xxxxxxxxxx
SET RETADR1=xxxxxxxxxx
SET FILE=xxxxxxxxxx
SET EXT=xxxxxxxxxx
SET IGNOREERROR=xxx
SET art=SHARE
SET Z_LW=C:
SET Q_LW=A:
SET MKDIRS=+
REM ----- Auswerten der Parameter
IF NOT %5. == . GOTO Switch1Error
IF %1. == ?. GOTO HELP
IF %1. == /?. GOTO HELP
IF %1. == -?. GOTO HELP
IF NOT %1. == . SET Z_LW=%1
IF NOT %2. == . SET Q_LW=%2
IF NOT %3. == . SET MKDIRS=%3
REM ----- Testen, ob die Environment-Variablen erstellt werden konnten
SET TESTFILE=***TESTFILE***
IF NOT %TESTFILE%. == ***TESTFILE***. GOTO EnvError
REM ----- Parameter überprüfen
IF %4. == X. GOTO LwOK2
IF %4. == x. GOTO LwOK2
IF NOT %4. == . GOTO Switch1Error
IF %Z_LW%. == C:. GOTO LwOK1
IF %Z_LW%. == c:. GOTO LwOK1
IF %Z_LW%. == D:. GOTO LwOK1
IF %Z_LW%. == d:. GOTO LwOK1
GOTO TargetError
:LwOK1
IF %Q_LW%. == A:. GOTO LwOK2
IF %Q_LW%. == a:. GOTO LwOK2
IF %Q_LW%. == B:. GOTO LwOK2
IF %Q_LW%. == b:. GOTO LwOK2
GOTO SourceError
:LwOK2
IF %MKDIRS%. == +. GOTO SwitchOK
IF NOT %MKDIRS%. == -. GOTO SwitchError
:SwitchOK
CLS
ECHO. ┌─────────────────────────────────────────────────────────────────────┐
ECHO. │ INSTALL.BAT - Batchdatei zum Entpacken der Archive von MDEBUG %VERSION% │
ECHO. └─────────────────────────────────────────────────────────────────────┘
ECHO.
IF %MKDIRS%. == -. GOTO S1
ECHO. INSTALL erstellt im aktuellen Directory von %Z_LW% folgende Directorys:
ECHO.
ECHO. akt. Directory
ECHO. ─────────────┐
ECHO. │
ECHO. ├──\MDEBUG Inhalt: Das Hauptprogramm und die Utils
ECHO. │
ECHO. ├──\SOURCE Inhalt: Die Quelltexte der Utils
ECHO. │
ECHO. └──\DOC Inhalt: Die Dokumentation zu MDEBUG %VERSION%
GOTO S2
:S1
ECHO. Die Directorys MDEBUG, SOURCE und DOC existieren bereits im aktuellen
ECHO. Directory des Laufwerks %Z_LW%.
:S2
ECHO.
ECHO. ┌────┐ ┌────┐
ECHO. Installiere MDEBUG %VERSION% vom Laufwerk │ %Q_LW% │ aus ins Laufwerk │ %Z_LW% │.
ECHO. └────┘ └────┘
ECHO.
ECHO. Das aktuelle Directory von %Z_LW% ist:
CD %Z_LW%
ECHO.
ECHO. Soll ich fortfahren [CTRL-C für Abbruch, sonst: fortfahren]?
ECHO. (INSTALL ? [RETURN] für Hilfe)
PAUSE >NUL
CLS
ECHO. Installiere MDEBUG %VERSION% im aktuellen Directory des Laufwerks %Z_LW% ...
ECHO.
%Z_LW%
IF %MKDIRS%. == -. GOTO DirsExist
ECHO.
ECHO. ***** Erstelle die Directorys MDEBUG, SOURCE und DOC ...
MD MDEBUG >NUL
MD SOURCE >NUL
MD DOC >NUL
:DirsExist
REM ----- Testen, ob die Directorys existieren
IF NOT EXIST %Z_LW%DOC\CON GOTO DirectoryError
IF NOT EXIST %Z_LW%SOURCE\CON GOTO DirectoryError
IF NOT EXIST %Z_LW%MDEBUG\CON GOTO DirectoryError
ECHO. ***** Installiere MDEBUG %VERSION% ...
copy %Q_LW%*.doc doc\*.* >NUL
IF EXIST %Q_LW%show.* copy %Q_LW%show.* doc\*.* >NUL
REM ----- Entpacken des Archivs MDEBUG1.EXE
cd MDEBUG
SET FILE=MDEBUG1
SET TESTFILE=MDDISDRV.COM
SET EXT=.EXE
SET RETADR1=LABEL1
GOTO InstallArchiv
:LABEL1
IF NOT %IGNOREERROR%. == . GOTO ErrorIgnored1
ECHO. ***** Verteile die Dateien auf die Directorys ...
copy *.a86 ..\source\*.* >NUL
copy *.obj ..\source\*.* >NUL
copy testmd.* ..\source\*.* >NUL
del *.a86 >NUL
del *.obj >NUL
del testmd.* >NUL
:ErrorIgnored1
REM ----- Entpacken der Dokumentation zu MDEBUG (Teil 1)
cd ..\doc
SET FILE=MDEBUG21
SET TESTFILE=MDEBUG.PRT
SET EXT=.EXE
SET RETADR1=LABEL2
GOTO InstallArchiv
:LABEL2
REM ----- Entpacken der Dokumentation (Teil 2)
SET FILE=MDEBUG22
SET TESTFILE=WHATS.NEW
SET EXT=.EXE
SET RETADR1=LABEL3
GOTO InstallArchiv
:LABEL3
REM ----- Entpacken der zusätzlichen Utils aus der Vollversion
IF NOT EXIST %Q_LW%MDEBUG.REG GOTO LABEL42
IF EXIST %Q_LW%MDEBUG3.EXE GOTO LABEL41
ECHO. ***** Bitte die Diskette 2 ins Laufwerk %Q_LW% einlegen und
ECHO. ***** eine Taste drücken [CTRL-C für Abbruch] ...
PAUSE >NUL
:LABEL41
SET art=VOLL
cd ..\MDEBUG
SET FILE=MDEBUG3
SET TESTFILE=SETREGNR.EXE
SET EXT=.EXE
SET RETADR1=LABEL4
GOTO InstallArchiv
:LABEL4
IF NOT %IGNOREERROR%. == . GOTO LABEL42
ECHO. ***** Verteile die Dateien auf die Directorys ...
copy *.asm ..\source >NUL
copy *.in? ..\source >NUL
del *.asm >NUL
del *.in? >NUL
:LABEL42
REM ----- Entpacken der Dokumentation zu MDEBUG (Teil 3)
REM
IF NOT EXIST %Q_LW%MDEBUG23.EXE GOTO LABEL5
cd ..\doc
SET FILE=MDEBUG23
SET TESTFILE=HISTORY.DOC
SET EXT=.EXE
SET RETADR1=LABEL5
GOTO InstallArchiv
:LABEL5
REM Hilfsvariablen Löschen
SET RETADR=
SET RETADR1=
SET FILE=
SET EXT=
SET Z_LW=
SET Q_LW=
SET MKDIRS=
SET TESTFILE=
cd ..\doc
CLS
ECHO.
ECHO. ================ Installation von MDEBUG beendet =============================
ECHO.
ECHO. MDEBUG %VERSION% ist nun installiert.
ECHO.
ECHO. Bitte lesen Sie sich vor der ersten Nutzung von MDEBUG die Dokumentation
ECHO. im Directory DOC durch!
ECHO. Vergessen Sie nicht Ihren Drucker vor dem Ausdruck der Dokumentation in
ECHO. einen Modus mit mindestens 100 Zeichen pro Zeile zu schalten!
ECHO.
IF "%art%" == "SHARE" GOTO LABEL6
ECHO. ------------------- Nur für Besitzer der Vollversion: ------------------------
ECHO.
ECHO. Beachten Sie bitte, daß Sie das Archiv PD_1.EXE noch manuell über den
ECHO. Aufruf
ECHO.
ECHO. PD_1 [RETURN]
ECHO.
ECHO. entpacken müssen!
ECHO. Am besten richten Sie auch für dieses Archiv ein eigenes Directory ein.
ECHO.
:LABEL6
ECHO. ==============================================================================
ECHO.
GOTO ENDE
REM --------------------------
REM
REM Eingabe: %FILE% = Name des Archivs
REM %EXT% = Extension des Archivs
REM %RETADR1% = Label, an dem die Programmausführung nach dem
REM Ende der Routine fortgeführt werden soll
REM %TESTFILE% = Datei, die nach dem Entpacken vorhanden sein muß
REM
:INSTALLARCHIV
SET RETADR=INSTALLArchiv
IF NOT EXIST %Q_LW%%FILE%%EXT% GOTO PromptUser1
ECHO.
ECHO. ***** Entpacke das Archiv %FILE%%EXT% ...
SET IgnoreError=
%Q_LW%%FILE%%EXT%
IF ERRORLEVEL == 1 GOTO ArchivERROR
IF NOT EXIST %TESTFILE% GOTO ArchivError
ECHO.
ECHO. ***** %FILE%%EXT% entpackt.
GOTO %RETADR1%
REM --------------------------
REM
REM Eingabe: %RETADR1% = Label, an dem die Programmausführung nach dem
REM Ende der Routine fortgeführt werden soll
REM
:ArchivERROR
ECHO.
ECHO. ***** Fehler beim Entpacken des Archivs %Q_LW%%FILE%%EXT% aufgetreten!
ECHO. (z.B. Disk %Z_LW% ist voll oder es wurde CTRL-C gedrückt)
ECHO.
ECHO. ***** Bitte eine Taste zur Fortsetzung der Installation drücken
ECHO. ***** [CTRL-C für Abbruch] ...
SET IgnoreError=YES
PAUSE >NUL
ECHO. ***** Installation wird fortgesetzt ...
GOTO %RETADR1%
REM --------------------------
:EnvError
CLS
ECHO. ***** INSTALL Fehler: Nicht genügend Platz im Umgebungsbereich *****
ECHO. ****** (= Environment) *****
ECHO.
ECHO. Zur Ausführung dieser Datei müssen Sie den Platz im Environment erhöhen.
ECHO. Falls Ihr Kommando-Interpreter der COMMAND.COM ist müssen Sie hierzu in
ECHO. der Datei CONFIG.SYS die Zeile
ECHO.
ECHO. SHELL=d:\COMMAND.COM /e:nnnnn /p
ECHO.
ECHO. einfügen oder editieren und den Computer neustarten.
ECHO. Hierbei ist 'd:' das Verzeichnis, in dem der COMMAND.COM steht und
ECHO. 'nnnnn' die Größe des Environments in Byte. (siehe auch DOS-Handbuch)
ECHO.
ECHO. Falls Sie diese Änderung des Systems nicht wünschen, können Sie INSTALL
ECHO. auch folgendermaßen aufrufen:
ECHO.
ECHO. COMMAND /e:2048 /C install.bat {parameter für install}
ECHO.
IF %COMSPEC%. == . GOTO ENDE
ECHO. Drücken Sie eine Taste zur Ausführung dieser Datei über den Befehl
ECHO.
ECHO. %COMSPEC% /e:2048 /C install.bat %1 %2 %3 %4 %5
ECHO.
ECHO. oder CTRL-C für Abbruch ...
PAUSE >NUL
ECHO.
ECHO. -----------------------------------------------------------------------
ECHO.
ECHO. ***** Neustart von INSTALL.BAT mit vergrößertem Environment ...
ECHO.
%COMSPEC% /e:2048 /C install.bat %1 %2 %3 %4 %5
GOTO Ende
REM --------------------------
:TargetError
ECHO.
ECHO. ***** INSTALL Fehler: Als erster Parameter [Ziellaufwerk] (%1%)
ECHO. ***** ist nur D: oder C: erlaubt!
ECHO.
ECHO. ***** Verwenden Sie die Form
ECHO.
ECHO. INSTALL ziellaufwerk quellaufwerk {-│+} X
ECHO.
ECHO ***** falls Sie ein anderes Laufwerk als C: oder D: als Ziellaufwerk
ECHO. ***** angeben möchten.
GOTO EEnde
REM --------------------------
:SourceError
ECHO.
ECHO. ***** INSTALL Fehler: Als zweiter Parameter [Quellaufwerk] (%2%)
ECHO. ***** ist nur A: oder B: erlaubt!
ECHO.
ECHO. ***** Verwenden Sie die Form
ECHO.
ECHO. INSTALL ziellaufwerk quellaufwerk {-│+} X
ECHO.
ECHO ***** falls Sie ein anderes Laufwerk als A: oder B: als Quellaufwerk
ECHO. ***** angeben möchten.
GOTO EEnde
REM --------------------------
:SwitchError
ECHO.
ECHO. ***** INSTALL Fehler: Als dritter Parameter (%3) ist nur + [Directorys
ECHO. ***** erstellen] oder - [Directorys existieren bereits]
ECHO. ***** erlaubt!
GOTO EEnde
REM --------------------------
:Switch1Error
ECHO.
ECHO. ***** INSTALL Fehler: Zuviele Parameter angegeben!
GOTO EEnde
REM --------------------------
:DirectoryError
ECHO.
ECHO. ***** INSTALL Fehler: Mindestens ein Ziel-Directory existiert nicht!
ECHO.
ECHO. ***** Verwenden Sie die Form
ECHO.
ECHO. INSTALL ziellaufwerk quellaufwerk
ECHO.
ECHO. ***** und ignorieren Sie die DOS-Fehlermeldung 'Zugriff abgelehnt' bzw.
ECHO. ***** 'Access denied'
GOTO EEnde
REM --------------------------
REM Unterroutine zur Ausgabe einer Fehlermeldung und zum Lesen einer Taste
REM Eingabe: %FILE% = Name des Archivs
REM %EXT% = Extension des Archivs
REM %RETADR% = Label, an dem die Programmausführung fort-
REM geführt werden soll.
REM
:PromptUser1
ECHO.
ECHO. ***** INSTALL - Fehler bei der Installierung von MDEBUG %VERSION% *****
ECHO.
ECHO. ***** Fehler: Kann die Datei %FILE%%EXT% im Laufwerk %Q_LW% nicht finden.
ECHO.
ECHO. ***** Bitte die richtige Diskette ins Laufwerk %Q_LW% einlegen
ECHO. ***** und eine Taste drücken [CTRL-C für Abbruch] ...
PAUSE >NUL
ECHO.
ECHO. ***** Neuer Versuch die Datei %FILE%%EXT% zu finden ...
GOTO %RETADR%
REM --------------------------
REM Programmteil zur Ausgabe der Aufruf-Syntax
:HELP
CLS
ECHO. ┌─────────────────────────────────────────────────────────────────────┐
ECHO. │ INSTALL.BAT - Batchdatei zum Entpacken der Archive von MDEBUG %VERSION% │
ECHO. └─────────────────────────────────────────────────────────────────────┘
ECHO.
ECHO. Aufruf: INSTALL {ziellaufwerk} {quellaufwerk} {+ ODER -} {X}
ECHO.
ECHO. mit: Ziellaufwerk = Laufwerk, auf dem die Dateien entpackt
ECHO. werden sollen (Voreinstellung: %Z_LW%,
ECHO. mögliche Angaben: C: oder D:)
ECHO. Quellaufwerk = Laufwerk, in dem die Archive von MDEBUG
ECHO. sind (Voreinstellung: %Q_LW%,
ECHO. mögliche Angaben: A: oder B:)
ECHO. - = Directorys nicht erstellen, da sie schon
ECHO. vorhanden sind.
ECHO. ODER + = Directorys erstellen, da sie noch nicht
ECHO. vorhanden sind. (Voreinstellung: %MKDIRS%)
ECHO. (INSTALL verteilt die Dateien auf mehrere
ECHO. Subdirectorys im Ziellaufwerk)
ECHO. X = Ziel- und Quellaufwerk nicht überprüfen,
ECHO. d.h. es sind beliebige Angaben für das
ECHO. Ziel- und das Quellaufwerk möglich.
ECHO.
ECHO. ***** Bitte eine Taste zur Ausgabe der Beispiele drücken [CTRL-C für Abbruch]
PAUSE >NUL
CLS
ECHO. ┌─────────────────────────────────────────────────────────────────────┐
ECHO. │ INSTALL.BAT - Batchdatei zum Entpacken der Archive von MDEBUG %VERSION% │
ECHO. └─────────────────────────────────────────────────────────────────────┘
ECHO.
ECHO. -- Fortsetzung der Syntaxhilfe --
ECHO.
ECHO. Beispiel: INSTALL D: B: +
ECHO. - Installieren von MDEBUG im akt. Directory des Laufwerks
ECHO. D:, wobei die Diskette mit den Archiven im Laufwerk B:
ECHO. liegt. Die Directorys werden explizit erstellt.
ECHO. Sie müssen vorher mit dem CD-Befehl im Ziellaufwerk in
ECHO. das Directory in das MDEBUG installiert werden soll
ECHO. wechseln.
ECHO.
ECHO. Beispiel: INSTALL B: A: + X
ECHO. - Installieren von MDEBUG im akt. Directory des Laufwerks
ECHO. B:, wobei die Diskette mit den Archiven im Laufwerk A:
ECHO. liegt. Die Directorys werden explizit erstellt.
ECHO. Auf dem Laufwerk B: muß noch genügend freier Platz sein!
ECHO.
ECHO. -- Ende der Syntaxhilfe --
GOTO ENDE
REM --------------------------
REM Programm-Ende
:EENDE
ECHO.
ECHO. ***** Verwenden Sie den Befehl
ECHO.
ECHO. INSTALL ? [RETURN]
ECHO.
ECHO. ***** zur Ausgabe einer Syntaxhilfe für INSTALL.BAT.
:ENDE0
ECHO.
ECHO. Beende die Ausführung von INSTALL.
ECHO.
:ENDE
REM --------------------------
REM Löschen der verwendeten Environment-Variablen
SET RETADR=
SET RETADR1=
SET FILE=
SET EXT=
SET Z_LW=
SET Q_LW=
SET MKDIRS=
SET TESTFILE=
SET IgnoreError=
SET VERSION=
SET ART=